WOLF core
WOLF: A Modular Estimation Framework for Robotics
XXXXXXXXXXXXXXXXXXXXXXXXvoid(0)" frameborder="0" name="MSearchResults" id="MSearchResults">
wolf::SE3 Namespace Reference

Functions

template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 3, 3 > Q_helper (const MatrixBase< D1 > &v, const MatrixBase< D2 > &w)
 Q matrix of the left Jacobian of SE(3), with v the linear and w the angular parts of the tangent vector. More...
 
template<typename D >
Matrix< typename D::Scalar, 6, 6 > jac_SE3_left (const MatrixBase< D > &tangent)
 Left Jacobian of SE(3), with tangent = [rho, theta]. More...
 
template<typename D >
Matrix< typename D::Scalar, 6, 6 > jac_SE3_right (const MatrixBase< D > &tangent)
 Right Jacobian of SE(3), with tangent = [rho, theta]. More...
 
template<typename D >
Matrix< typename D::Scalar, 6, 6 > jac_SE3_left_inv (const MatrixBase< D > &tangent)
 Inverse of the left Jacobian of SE(3), with tangent = [rho, theta]. More...
 
template<typename D >
Matrix< typename D::Scalar, 6, 6 > jac_SE3_right_inv (const MatrixBase< D > &tangent)
 Inverse of the right Jacobian of SE(3), with tangent = [rho, theta]. More...
 
template<typename D1 , typename D2 >
void identity (MatrixBase< D1 > &p, QuaternionBase< D2 > &q)
 
template<typename D1 , typename D2 >
void identity (MatrixBase< D1 > &p, MatrixBase< D2 > &q)
 
template<typename D >
void identity (MatrixBase< D > &d)
 
template<typename T = double>
Matrix< T, 7, 1 > identity ()
 
void identity (VectorComposite &v)
 
VectorComposite identityComposite ()
 
template<typename D1 , typename D2 , typename D4 , typename D5 >
void inverse (const MatrixBase< D1 > &p, const QuaternionBase< D2 > &q, MatrixBase< D4 > &ip, QuaternionBase< D5 > &iq)
 
template<typename D1 , typename D2 , typename D4 , typename D5 >
void inverse (const MatrixBase< D1 > &p, const MatrixBase< D2 > &q, MatrixBase< D4 > &ip, MatrixBase< D5 > &iq)
 
template<typename D1 , typename D2 >
void inverse (const MatrixBase< D1 > &d, MatrixBase< D2 > &id)
 
template<typename D >
Matrix< typename D::Scalar, 7, 1 > inverse (const MatrixBase< D > &d)
 
void inverse (const VectorComposite &v, VectorComposite &c)
 
VectorComposite inverse (const VectorComposite &v)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void compose (const MatrixBase< D1 > &p1, const QuaternionBase< D2 > &q1, const MatrixBase< D4 > &p2, const QuaternionBase< D5 > &q2, MatrixBase< D7 > &pc, QuaternionBase< D8 > &qc)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void compose (const MatrixBase< D1 > &p1, const MatrixBase< D2 > &q1, const MatrixBase< D4 > &p2, const MatrixBase< D5 > &q2, MatrixBase< D7 > &pc, MatrixBase< D8 > &qc)
 
template<typename D1 , typename D2 , typename D3 >
void compose (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &sum)
 
template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > compose (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2)
 
template<typename D1 , typename D2 , typename D3 , typename D4 , typename D5 >
void compose (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &sum, MatrixBase< D4 > &J_sum_d1, MatrixBase< D5 > &J_sum_d2)
 
void compose (const VectorComposite &x1, const VectorComposite &x2, VectorComposite &c)
 
VectorComposite compose (const VectorComposite &x1, const VectorComposite &x2)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void between (const MatrixBase< D1 > &p1, const QuaternionBase< D2 > &q1, const MatrixBase< D4 > &p2, const QuaternionBase< D5 > &q2, MatrixBase< D7 > &p12, QuaternionBase< D8 > &q12)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void between (const MatrixBase< D1 > &p1, const MatrixBase< D2 > &q1, const MatrixBase< D4 > &p2, const MatrixBase< D5 > &q2, MatrixBase< D7 > &p12, MatrixBase< D8 > &q12)
 
template<typename D1 , typename D2 , typename D3 >
void between (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &d12)
 
template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > between (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2)
 
void between (const VectorComposite &x1, const VectorComposite &x2, VectorComposite &x12)
 
VectorComposite between (const VectorComposite &x1, const VectorComposite &x2)
 
template<typename D1 , typename D2 , typename D3 , typename D4 >
void exp (const MatrixBase< D1 > &rho, const MatrixBase< D2 > &theta, MatrixBase< D3 > &p, QuaternionBase< D4 > &q)
 
template<typename D1 , typename D2 , typename D3 , typename D4 >
void exp (const MatrixBase< D1 > &rho, const MatrixBase< D2 > &theta, MatrixBase< D3 > &p, MatrixBase< D4 > &q)
 
template<typename D1 , typename D2 >
void exp (const MatrixBase< D1 > &tau, MatrixBase< D2 > &delta)
 
template<typename D >
Matrix< typename D::Scalar, 7, 1 > exp (const MatrixBase< D > &tau)
 
template<typename D1 , typename D2 , typename D3 >
void exp (const MatrixBase< D1 > &tau, MatrixBase< D2 > &delta, MatrixBase< D3 > &J_delta_tau)
 
void exp (const VectorComposite &tau, VectorComposite &delta)
 
VectorComposite exp (const VectorComposite &tau)
 
template<typename D1 , typename D2 , typename D3 , typename D4 >
void log (const MatrixBase< D1 > &p, const QuaternionBase< D2 > &q, MatrixBase< D3 > &rho, MatrixBase< D4 > &theta)
 
template<typename D1 , typename D2 , typename D3 , typename D4 >
void log (const MatrixBase< D1 > &p, const MatrixBase< D2 > &q, MatrixBase< D3 > &rho, MatrixBase< D4 > &theta)
 
template<typename D1 , typename D2 >
void log (const MatrixBase< D1 > &delta, MatrixBase< D2 > &tau)
 
template<typename D >
Matrix< typename D::Scalar, 6, 1 > log (const MatrixBase< D > &delta)
 
template<typename D1 , typename D2 , typename D3 >
void log (const MatrixBase< D1 > &delta, MatrixBase< D2 > &tau, MatrixBase< D3 > &J_tau_delta)
 
void log (const VectorComposite &delta, VectorComposite &tau)
 
VectorComposite log (const VectorComposite &delta)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void plus (const MatrixBase< D1 > &p1, const QuaternionBase< D2 > &q1, const MatrixBase< D4 > &p2, const MatrixBase< D5 > &o2, MatrixBase< D7 > &plus_p, QuaternionBase< D8 > &plus_q)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void plus (const MatrixBase< D1 > &p1, const MatrixBase< D2 > &q1, const MatrixBase< D4 > &p2, const MatrixBase< D5 > &o2, MatrixBase< D7 > &plus_p, MatrixBase< D8 > &plus_q)
 
template<typename D1 , typename D2 , typename D3 >
void plus (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &d_plus)
 
template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > plus (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2)
 
void plus (const VectorComposite &x, const VectorComposite &tau, VectorComposite &res)
 
VectorComposite plus (const VectorComposite &x, const VectorComposite &tau)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void minus (const MatrixBase< D1 > &p1, const QuaternionBase< D2 > &q1, const MatrixBase< D4 > &p2, const QuaternionBase< D5 > &q2, MatrixBase< D7 > &pd, MatrixBase< D8 > &od)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D6 , typename D7 , typename D8 , typename D9 >
void minus (const MatrixBase< D1 > &p1, const QuaternionBase< D2 > &q1, const MatrixBase< D4 > &p2, const QuaternionBase< D5 > &q2, MatrixBase< D6 > &pd, MatrixBase< D7 > &od, MatrixBase< D8 > &J_do_q1, MatrixBase< D9 > &J_do_q2)
 
template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void minus (const MatrixBase< D1 > &p1, const MatrixBase< D2 > &q1, const MatrixBase< D4 > &p2, const MatrixBase< D5 > &q2, MatrixBase< D7 > &pd, MatrixBase< D8 > &od)
 
template<typename D1 , typename D2 , typename D3 >
void minus (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &err)
 
template<typename D1 , typename D2 , typename D3 , typename D4 , typename D5 >
void minus (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, MatrixBase< D3 > &dif, MatrixBase< D4 > &J_diff_d1, MatrixBase< D5 > &J_diff_d2)
 
template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 6, 1 > minus (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2)
 
void minus (const VectorComposite &x1, const VectorComposite &x2, VectorComposite &res)
 
VectorComposite minus (const VectorComposite &x1, const VectorComposite &x2)
 
template<typename D1 , typename D2 , typename D3 >
void interpolate (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, const typename D1::Scalar &t, MatrixBase< D3 > &ret)
 
template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > interpolate (const MatrixBase< D1 > &d1, const MatrixBase< D2 > &d2, const typename D1::Scalar &t)
 
void interpolate (const VectorComposite &x1, const VectorComposite &x2, const double &t, VectorComposite &res)
 
VectorComposite interpolate (const VectorComposite &x1, const VectorComposite &x2, const double &t)
 
template<typename D1 , typename D2 >
void toSE3 (const MatrixBase< D1 > &pose, MatrixBase< D2 > &SE3)
 
template<typename D >
Matrix< typename D::Scalar, 4, 4 > toSE3 (const MatrixBase< D > &pose)
 

Function Documentation

◆ between() [1/6]

template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > wolf::SE3::between ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2 
)
inline

◆ between() [2/6]

template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::between ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2,
MatrixBase< D3 > &  d12 
)
inline

◆ between() [3/6]

template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::between ( const MatrixBase< D1 > &  p1,
const MatrixBase< D2 > &  q1,
const MatrixBase< D4 > &  p2,
const MatrixBase< D5 > &  q2,
MatrixBase< D7 > &  p12,
MatrixBase< D8 > &  q12 
)
inline

◆ between() [4/6]

template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::between ( const MatrixBase< D1 > &  p1,
const QuaternionBase< D2 > &  q1,
const MatrixBase< D4 > &  p2,
const QuaternionBase< D5 > &  q2,
MatrixBase< D7 > &  p12,
QuaternionBase< D8 > &  q12 
)
inline

◆ between() [5/6]

VectorComposite wolf::SE3::between ( const VectorComposite &  x1,
const VectorComposite &  x2 
)
inline

◆ between() [6/6]

void wolf::SE3::between ( const VectorComposite &  x1,
const VectorComposite &  x2,
VectorComposite &  x12 
)
inline

◆ compose() [1/7]

template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > wolf::SE3::compose ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2 
)
inline

◆ compose() [2/7]

template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::compose ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2,
MatrixBase< D3 > &  sum 
)
inline

◆ compose() [3/7]

template<typename D1 , typename D2 , typename D3 , typename D4 , typename D5 >
void wolf::SE3::compose ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2,
MatrixBase< D3 > &  sum,
MatrixBase< D4 > &  J_sum_d1,
MatrixBase< D5 > &  J_sum_d2 
)
inline

◆ compose() [4/7]

template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::compose ( const MatrixBase< D1 > &  p1,
const MatrixBase< D2 > &  q1,
const MatrixBase< D4 > &  p2,
const MatrixBase< D5 > &  q2,
MatrixBase< D7 > &  pc,
MatrixBase< D8 > &  qc 
)
inline

◆ compose() [5/7]

template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::compose ( const MatrixBase< D1 > &  p1,
const QuaternionBase< D2 > &  q1,
const MatrixBase< D4 > &  p2,
const QuaternionBase< D5 > &  q2,
MatrixBase< D7 > &  pc,
QuaternionBase< D8 > &  qc 
)
inline

◆ compose() [6/7]

VectorComposite wolf::SE3::compose ( const VectorComposite &  x1,
const VectorComposite &  x2 
)
inline

◆ compose() [7/7]

void wolf::SE3::compose ( const VectorComposite &  x1,
const VectorComposite &  x2,
VectorComposite &  c 
)
inline

◆ exp() [1/7]

template<typename D >
Matrix< typename D::Scalar, 7, 1 > wolf::SE3::exp ( const MatrixBase< D > &  tau)
inline

◆ exp() [2/7]

template<typename D1 , typename D2 , typename D3 , typename D4 >
void wolf::SE3::exp ( const MatrixBase< D1 > &  rho,
const MatrixBase< D2 > &  theta,
MatrixBase< D3 > &  p,
MatrixBase< D4 > &  q 
)
inline

◆ exp() [3/7]

template<typename D1 , typename D2 , typename D3 , typename D4 >
void wolf::SE3::exp ( const MatrixBase< D1 > &  rho,
const MatrixBase< D2 > &  theta,
MatrixBase< D3 > &  p,
QuaternionBase< D4 > &  q 
)
inline

◆ exp() [4/7]

template<typename D1 , typename D2 >
void wolf::SE3::exp ( const MatrixBase< D1 > &  tau,
MatrixBase< D2 > &  delta 
)
inline

◆ exp() [5/7]

template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::exp ( const MatrixBase< D1 > &  tau,
MatrixBase< D2 > &  delta,
MatrixBase< D3 > &  J_delta_tau 
)
inline

◆ exp() [6/7]

VectorComposite wolf::SE3::exp ( const VectorComposite &  tau)
inline

◆ exp() [7/7]

void wolf::SE3::exp ( const VectorComposite &  tau,
VectorComposite &  delta 
)
inline

◆ identity() [1/5]

template<typename T = double>
Matrix< T, 7, 1 > wolf::SE3::identity ( )
inline

◆ identity() [2/5]

template<typename D >
void wolf::SE3::identity ( MatrixBase< D > &  d)
inline

◆ identity() [3/5]

template<typename D1 , typename D2 >
void wolf::SE3::identity ( MatrixBase< D1 > &  p,
MatrixBase< D2 > &  q 
)
inline

◆ identity() [4/5]

template<typename D1 , typename D2 >
void wolf::SE3::identity ( MatrixBase< D1 > &  p,
QuaternionBase< D2 > &  q 
)
inline

◆ identity() [5/5]

void wolf::SE3::identity ( VectorComposite &  v)
inline

◆ identityComposite()

VectorComposite wolf::SE3::identityComposite ( )
inline

◆ interpolate() [1/4]

template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > wolf::SE3::interpolate ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2,
const typename D1::Scalar &  t 
)
inline

◆ interpolate() [2/4]

template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::interpolate ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2,
const typename D1::Scalar &  t,
MatrixBase< D3 > &  ret 
)
inline

◆ interpolate() [3/4]

VectorComposite wolf::SE3::interpolate ( const VectorComposite &  x1,
const VectorComposite &  x2,
const double &  t 
)
inline

◆ interpolate() [4/4]

void wolf::SE3::interpolate ( const VectorComposite &  x1,
const VectorComposite &  x2,
const double &  t,
VectorComposite &  res 
)
inline

◆ inverse() [1/6]

template<typename D >
Matrix< typename D::Scalar, 7, 1 > wolf::SE3::inverse ( const MatrixBase< D > &  d)
inline

◆ inverse() [2/6]

template<typename D1 , typename D2 >
void wolf::SE3::inverse ( const MatrixBase< D1 > &  d,
MatrixBase< D2 > &  id 
)
inline

◆ inverse() [3/6]

template<typename D1 , typename D2 , typename D4 , typename D5 >
void wolf::SE3::inverse ( const MatrixBase< D1 > &  p,
const MatrixBase< D2 > &  q,
MatrixBase< D4 > &  ip,
MatrixBase< D5 > &  iq 
)
inline

◆ inverse() [4/6]

template<typename D1 , typename D2 , typename D4 , typename D5 >
void wolf::SE3::inverse ( const MatrixBase< D1 > &  p,
const QuaternionBase< D2 > &  q,
MatrixBase< D4 > &  ip,
QuaternionBase< D5 > &  iq 
)
inline

◆ inverse() [5/6]

VectorComposite wolf::SE3::inverse ( const VectorComposite &  v)
inline

◆ inverse() [6/6]

void wolf::SE3::inverse ( const VectorComposite &  v,
VectorComposite &  c 
)
inline

◆ jac_SE3_left()

template<typename D >
Matrix< typename D::Scalar, 6, 6 > wolf::SE3::jac_SE3_left ( const MatrixBase< D > &  tangent)
inline

Left Jacobian of SE(3), with tangent = [rho, theta].

◆ jac_SE3_left_inv()

template<typename D >
Matrix< typename D::Scalar, 6, 6 > wolf::SE3::jac_SE3_left_inv ( const MatrixBase< D > &  tangent)
inline

Inverse of the left Jacobian of SE(3), with tangent = [rho, theta].

◆ jac_SE3_right()

template<typename D >
Matrix< typename D::Scalar, 6, 6 > wolf::SE3::jac_SE3_right ( const MatrixBase< D > &  tangent)
inline

Right Jacobian of SE(3), with tangent = [rho, theta].

◆ jac_SE3_right_inv()

template<typename D >
Matrix< typename D::Scalar, 6, 6 > wolf::SE3::jac_SE3_right_inv ( const MatrixBase< D > &  tangent)
inline

Inverse of the right Jacobian of SE(3), with tangent = [rho, theta].

◆ log() [1/7]

template<typename D >
Matrix< typename D::Scalar, 6, 1 > wolf::SE3::log ( const MatrixBase< D > &  delta)
inline

◆ log() [2/7]

template<typename D1 , typename D2 >
void wolf::SE3::log ( const MatrixBase< D1 > &  delta,
MatrixBase< D2 > &  tau 
)
inline

◆ log() [3/7]

template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::log ( const MatrixBase< D1 > &  delta,
MatrixBase< D2 > &  tau,
MatrixBase< D3 > &  J_tau_delta 
)
inline

◆ log() [4/7]

template<typename D1 , typename D2 , typename D3 , typename D4 >
void wolf::SE3::log ( const MatrixBase< D1 > &  p,
const MatrixBase< D2 > &  q,
MatrixBase< D3 > &  rho,
MatrixBase< D4 > &  theta 
)
inline

◆ log() [5/7]

template<typename D1 , typename D2 , typename D3 , typename D4 >
void wolf::SE3::log ( const MatrixBase< D1 > &  p,
const QuaternionBase< D2 > &  q,
MatrixBase< D3 > &  rho,
MatrixBase< D4 > &  theta 
)
inline

◆ log() [6/7]

VectorComposite wolf::SE3::log ( const VectorComposite &  delta)
inline

◆ log() [7/7]

void wolf::SE3::log ( const VectorComposite &  delta,
VectorComposite &  tau 
)
inline

◆ minus() [1/8]

template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 6, 1 > wolf::SE3::minus ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2 
)
inline

◆ minus() [2/8]

template<typename D1 , typename D2 , typename D3 , typename D4 , typename D5 >
void wolf::SE3::minus ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2,
MatrixBase< D3 > &  dif,
MatrixBase< D4 > &  J_diff_d1,
MatrixBase< D5 > &  J_diff_d2 
)
inline

◆ minus() [3/8]

template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::minus ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2,
MatrixBase< D3 > &  err 
)
inline

◆ minus() [4/8]

template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::minus ( const MatrixBase< D1 > &  p1,
const MatrixBase< D2 > &  q1,
const MatrixBase< D4 > &  p2,
const MatrixBase< D5 > &  q2,
MatrixBase< D7 > &  pd,
MatrixBase< D8 > &  od 
)
inline

◆ minus() [5/8]

template<typename D1 , typename D2 , typename D4 , typename D5 , typename D6 , typename D7 , typename D8 , typename D9 >
void wolf::SE3::minus ( const MatrixBase< D1 > &  p1,
const QuaternionBase< D2 > &  q1,
const MatrixBase< D4 > &  p2,
const QuaternionBase< D5 > &  q2,
MatrixBase< D6 > &  pd,
MatrixBase< D7 > &  od,
MatrixBase< D8 > &  J_do_q1,
MatrixBase< D9 > &  J_do_q2 
)
inline

◆ minus() [6/8]

template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::minus ( const MatrixBase< D1 > &  p1,
const QuaternionBase< D2 > &  q1,
const MatrixBase< D4 > &  p2,
const QuaternionBase< D5 > &  q2,
MatrixBase< D7 > &  pd,
MatrixBase< D8 > &  od 
)
inline

◆ minus() [7/8]

VectorComposite wolf::SE3::minus ( const VectorComposite &  x1,
const VectorComposite &  x2 
)
inline

◆ minus() [8/8]

void wolf::SE3::minus ( const VectorComposite &  x1,
const VectorComposite &  x2,
VectorComposite &  res 
)
inline

◆ plus() [1/6]

template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 7, 1 > wolf::SE3::plus ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2 
)
inline

◆ plus() [2/6]

template<typename D1 , typename D2 , typename D3 >
void wolf::SE3::plus ( const MatrixBase< D1 > &  d1,
const MatrixBase< D2 > &  d2,
MatrixBase< D3 > &  d_plus 
)
inline

◆ plus() [3/6]

template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::plus ( const MatrixBase< D1 > &  p1,
const MatrixBase< D2 > &  q1,
const MatrixBase< D4 > &  p2,
const MatrixBase< D5 > &  o2,
MatrixBase< D7 > &  plus_p,
MatrixBase< D8 > &  plus_q 
)
inline

◆ plus() [4/6]

template<typename D1 , typename D2 , typename D4 , typename D5 , typename D7 , typename D8 >
void wolf::SE3::plus ( const MatrixBase< D1 > &  p1,
const QuaternionBase< D2 > &  q1,
const MatrixBase< D4 > &  p2,
const MatrixBase< D5 > &  o2,
MatrixBase< D7 > &  plus_p,
QuaternionBase< D8 > &  plus_q 
)
inline

◆ plus() [5/6]

VectorComposite wolf::SE3::plus ( const VectorComposite &  x,
const VectorComposite &  tau 
)
inline

◆ plus() [6/6]

void wolf::SE3::plus ( const VectorComposite &  x,
const VectorComposite &  tau,
VectorComposite &  res 
)
inline

◆ Q_helper()

template<typename D1 , typename D2 >
Matrix< typename D1::Scalar, 3, 3 > wolf::SE3::Q_helper ( const MatrixBase< D1 > &  v,
const MatrixBase< D2 > &  w 
)
inline

Q matrix of the left Jacobian of SE(3), with v the linear and w the angular parts of the tangent vector.

Barfoot, "State estimation for robotics", eq. 7.86: Q = 1/2 V + c2 (WV + VW + WVW) + c3 (WWV + VWW - 3 WVW) + c4 (WVWW + WWVW) with V = [v]x, W = [w]x, th = |w|, and c2 = (th - sin(th)) / th^3 c3 = (th^2 + 2 cos(th) - 2) / (2 th^4) c4 = (2 th - 3 sin(th) + th cos(th)) / (2 th^5) (Taylor series for small angles, where the closed forms are numerically unstable)

◆ toSE3() [1/2]

template<typename D >
Matrix< typename D::Scalar, 4, 4 > wolf::SE3::toSE3 ( const MatrixBase< D > &  pose)
inline

◆ toSE3() [2/2]

template<typename D1 , typename D2 >
void wolf::SE3::toSE3 ( const MatrixBase< D1 > &  pose,
MatrixBase< D2 > &  SE3 
)
inline